

review--------------
1.Date():日期对象
	1.参数
		new Date()
		new Date(2020,10,1)
		new Date("2020/10/1")
		new Date("2020-10-1")
		new Date(毫秒数);
	2.方法
		getTime()
		getFullYear()
		getDate()
		getDay()
		getMonth():0-11
		...


		setxxx(num)



2.面向对象:
	万物皆对象

	var obj={

	}

1.工厂模式
	function student(name,age){
		var obj=new Object();
		obj.name=name;
		obj.age=age;
		return obj
	}

	var stu1=student("lisi",20)

	缺点：
		对象不能细分
		对于公有属性和方法存放混乱/浪费内存

2.构造函数模式
	function say(){}
	function Student(name,age){
		this.name=name;
		this.age=age;
		this.say=say;
	}

	var stu1=new Student('lisi',20);

3.原型对象模式
	function Student(name,age){
		this.name=name;
		this.age=age;
	}

	Student.prototype.say=function(){}

	Student.prtotype.run=funciton(){}

	Student.prototype={//new Object()
		constructor:Student,
		say:function(){},
		run:function(){}
	}

	var stu1=new Student("lisi",20);


4.继承
	子类的原型指向父类的实例对象
	原型链继承
	Poor.prototye=new Rich();
	Poor.prototype.constructor=Poor;



	function Rich(name,age){
		this.name=name;
		this.age=age;
	}

	Rich.prototype={
		constructor:Rich
	}


	function Poor(name,age,gender){
		Rich.call(this,name,age);
		this.name=name;
		this.age=age;
		this.gender=gender;
	}

	Poor.prototype={
		constructor:Poor
	}

	var p1=new Poor();


People
	student
	teacher

animal:
	dog
	bird

借用构造函数：
	Rich.call(this,name,age);

---------------------

html
css
js

核心js：80%
dom：1
	事件：
		1.事件三要素
		2.事件流
			事件捕获：
				从外向内解析
			事件冒泡：
				从内向外执行

			默认情况下：
				先进行事件捕获，然后进行事件冒泡
		3.事件绑定与解绑
			dom0级事件：
				绑定：
				dom.onType=function(){}
				解绑：
				dom.onType=null;
				优点：
					兼容性佳

				缺点：
					不能对同一dom元素绑定同一类型的多个事件
			dom2级事件：
				绑定：
				dom.addEventListener(事件类型，事件处理程序，执行阶段)
				解绑：
				dom.removeEventListener("click",程序，执行阶段)

				缺点：
					兼容性较差
					ie8:
						attachEvent()
						detachEvent()


bom：1




















